package tedu.cn.tedu.oop2;
/*本类用于静态static的入门案例*/
/*被static修饰的资源统称为静态资源
* 静态资源是随着类加载而加载到内存中的,比对象优先进入内存
* 所以,静态资源可以不通过对象,直接通过类名调用*/
public class TestStartic1 {
    public static void main(String[] args) {

        Fruit.clean();
        System.out.println(Fruit.kind);
        System.out.println(Fruit.weight);
        Fruit f1=new Fruit();
        Fruit f2=new Fruit();
        f1.clean();
        f1.grow();//不静态,可以使用对象直接点出来
        System.out.println(f1.kind);
        System.out.println(f1.weight);

        /*静态资源在内存中只有一份,而且会被全局所有对象共享
        * 所以:不管我们使用哪种方式修改了静态变量的值,使用任何方式来查看
        * 都是静态变量那个刚刚被修改了的值*/
        f1.price=6.6;
        System.out.println(f1.price);
      System.out.println(f2.price);

      Fruit.kind="苹果";
        System.out.println(Fruit.kind);
        System.out.println(f1.kind);
        System.out.println(f2.kind);

        f1.kind="香蕉";
        System.out.println(Fruit.kind);
        System.out.println(f1.kind);
        System.out.println(f2.kind);

        f2.kind="梨子";
        System.out.println(Fruit.kind);
        System.out.println(f1.kind);
        System.out.println(f2.kind);

    }
}
class Fruit{
    static String kind;
    static double weight;
    double price;

    public static void clean(){
        System.out.println("洗水果呀洗水果~");
    }

    public void grow(){
        System.out.println("这个果子长的一看就很好吃~");
    }
}